Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Australian Open - Melbourne Millennium Estoril Open - Estoril French Open - Paris Wimbledon - London Rennes Challenger Charleston Challenger St. Brieuc Challenger Portugal F9 Spain F17 Spain F18 Spain F19 Spain F27 Spain F33 Spain F34 Spain F35 Portugal F4 Spain F8 Spain F9 Spain F10 Spain F13 Spain F17 Spain F18 Spain F19 Spain F20 Spain F31 Spain F33 Portugal F7 Portugal F8 Spain F39 Spain F40 United Arab Emirates F2 France F1 Spain F3 Spain F4 Spain F5 Spain F10 Spain F16 Spain F17 Spain F18 Spain F20 Spain F21 France F12 Spain F29 Spain F30 Portugal F4 Portugal F5 Spain F35 Spain F37 Spain F3 France F1 Spain F4 Italy F2 Spain F16 Spain F17 Spain F18 Spain F19 Spain F20 Italy F17 Spain F31 Great Britain F14 Iran F3 Spain F35 Spain F36 Germany F18 France F19 Great Britain F17 Iran F6 Turkey F4 France F4 Spain F14 Spain F15 Romania F5 Romania F6 Belgium F4 Great Britain F11 Belgium F6 Germany F10 Belgium F8 Spain F30 Spain F36 Germany F16 Spain F37 Germany F17 Spain F38 France F19 Turkey F30 France F1 Croatia F1 Croatia F2 France F4 Portugal F3 United Arab Emirates F1 Bahrain F1 Saudi Arabia F1 Qatar F1 Spain F17 Spain F18 Spain F19 Turkey F27 Great Britain F13 Turkey F33 Great Britain F14 Kuwait F2 Kuwait F3 Turkey F40 France F22 Turkey F42 Turkey F43 Croatia F1 Croatia F2 Portugal F3 Portugal F4 Turkey F11 Russia F4 Qatar F1 Qatar F2 France F1 Turkey F17 Turkey F18 Turkey F19 Portugal F8 Turkey F22 Spain F17 Turkey F24 Spain F20 Turkey F27 Great Britain F16 Belarus F1 Turkey F34 Turkey F35 France F19 Portugal F10 Portugal F11 Turkey F47 Germany F1 France F3 Japan F1 Greece F3 Tunisia F1 Tunisia F2 Slovenia F3 France F10 Turkey F22 Belgium F5 Serbia F4 Belgium F7 France F16 Latvia F1 Serbia F9 Iran F8 Iran F9 Iran F10 Serbia F14 Italy F34 Great Britain F17 Norway F1 Spain F22 Spain F34 Spain F41 Spain F23 Spain F26 Spain F42 United Arab Emirates F1 Portugal F5 Spain F38 Spain F39 Spain F40 Turkey F4 Spain F41 Turkey F5 Iran F4 Spain F3 Spain F5 Turkey F6 Spain F6 Iran F5 Spain F28 Romania F10 Romania F11 Spain F30 Canada F2 Spain F7 Spain F11 Italy F3 Iran F7 Turkey F21 Sweden F6 Netherlands F4 France F18 France F1 (Bagnoles-de-l'Orne) France F5 (Toulouse) France F1 (Bagnoles-de-l'Orne) France F6 (Villers Les Nancy) France F7 (La Grande Motte) France F8 (Angers) Germany F7 (Bad Schussenried) Belgium F6 (Brussels) France F21 (Saint-Dizier) M15+H Bagnoles-de-l'Orne M25+H Plaisir M15+H Bagnoles de l'Orne M25 Toulouse-Balma M25 Angers M25 Martos M25 Klosters M15 Monastir M25 Wetzlar M25 Idanha-a-Nova M25 Ystad M25 Loule M25 Koksijde M25 Oldenzaal M15 Monastir M25+H Bagneres-de-Bigorre M25+H Plaisir M15 Cordoba M25 Sunderland M25 Monastir M25 Loughborough M25 Sheffield M25 Bath M25 Loule M25 Montreal M25 Montreal M25 Sharm ElSheikh M25 Gurb M25 Nottingham M25 Nottingham M25 Nottingham M25 Porto M25 Bodrum M25 Vale do Lobo M25+H Ajaccio M25 Heraklion M25 Vale do Lobo M15 Zahra M25 Vale do Lobo M25 Loule M25 Elvas M25+H Ajaccio M25 Nottingham M25 Roehampton M25 Vale do Lobo M25 Norwich M25 Glasgow M25 Vila Real de Santo Antonio BNP Paribas Masters - Paris Wimbledon - London U.S. Open - New York French Open - Paris French Open - Paris Australian Open - Melbourne U.S. Open - New York Mamaia Challenger - Constanta Kos Succhetti Tennis Cup - Cordenons 84° Concurso Internacional Tenis San Sebastian - San Sebastian Orbetello Challenger Seville Challenger Tarragona Challenger Rennes Challenger Tanger Challenger Meknes Challenger Rabat Challenger Marrakech Challenger Leon Challenger Tallahassee Challenger Reggio Emilia Challenger Turin Challenger Recanati Challenger Tampere Challenger Istanbul Challenger Seville Challenger Izmir Challenger Manerbio Challenger Tunis Challenger Heilbronn Challenger Courmayeur Challenger Quimper Challenger Casablanca Challenger Sao Paulo Challenger Pingguo Challenger Furth Challenger Kosice Challenger Marburg Challenger Braunschweig Challenger Guangzhou Challenger San Marino Challenger San Sebastian Challenger St. Brieuc Challenger Eckental Challenger Kazan Challenger Quimper Challenger Bergamo Challenger Meknes Challenger Cherbourg Challenger Rome Challenger Casablanca Challenger Rabat Challenger Marrakech Challenger Mersin Challenger Rome Challenger Cremona Challenger Bordeaux Challenger Furth Challenger Kosice Challenger Milan Challenger Tampere Challenger Sibiu Challenger Cordenons Challenger Como Challenger Alphen Challenger Petange Challenger Trnava Challenger Madrid Challenger San Juan Challenger Rio De Janeiro Challenger Porto Alegre Challenger Montevideo Challenger Tampere Challenger Segovia Challenger Cherbourg Challenger Seville Challenger Szczecin Challenger Trnava Challenger Bordeaux Challenger Madrid Challenger Furth Challenger Kosice Challenger Todi Challenger San Benedetto Challenger Eskisehir Challenger Poznan Challenger Guimaraes Challenger Petange Challenger Izmir Challenger Kyoto Challenger Champaign Challenger Heilbronn Challenger Quimper Challenger Astana Challenger Cherbourg Challenger St. Brieuc Challenger Vercelli Challenger Aix En Provence Challenger Mohammedia Challenger Helsinki Challenger Happy Valley Challenger Bergamo Challenger Drummondville Challenger Le Gosier Challenger St. Brieuc Challenger Santos Challenger Sao Paulo Challenger Furth Challenger Moscow Challenger Milan Challenger Alphen Challenger Tyumen Challenger Perugia Challenger Mallorca Challenger Cassis Challenger Biel Challenger Alicante Challenger Mouilleron-Le-Captif Challenger Vilnus Challenger Brest Challenger Roanne Challenger Phoenix Challenger Lille Challenger Girona Challenger Oeiras 3 Challenger St. Tropez Challenger Lisbon Challenger Bratislava 2 Challenger Aix En Provence Challenger Ismaning Challenger Calgary Challenger Tunis Challenger Vicenza Challenger Nonthaburi 3 Challenger Koblenz Challenger Lyon Challenger Blois Challenger Modena Challenger Pozoblanco Challenger Shenzhen 1 Challenger Porto Challenger Grodzisk Mazowiecki Challenger Prague 3 Challenger Mallorca Challenger Cassis Challenger Rennes Challenger Orleans Challenger Braga Challenger Mouilleron-Le-Captif Challenger Ortisei Challenger Drummondville Challenger Cassis Challenger Maia Challenger Noumea Challenger Oeiras 1 Challenger Oeiras 2 Challenger Nottingham Challenger Cherbourg Challenger Tenerife 2 Challenger Tenerife 3 Challenger Girona Challenger Busan Challenger Gwangju Challenger Francavilla Challenger Oeiras 4 Challenger Blois Challenger Segovia Challenger Porto Challenger Manacor Challenger Columbus Challenger Villena Challenger Rovereto Challenger Nottingham Challenger Cherbourg Challenger Antalya 2 Challenger Orleans Challenger Brest Challenger Tenerife Challenger Bratislava Challenger Helsinki Challenger Quimper Challenger Cherbourg Challenger Oeiras 1 Challenger Estoril Open - Estoril Estoril Open - Estoril Estoril Open - Estoril If Stockholm Open - Stockholm Open Sud de France - Montpellier Open 13 - Marseille Estoril Open - Estoril German Tennis Championships - Hamburg Aircel Chennai Open - Chennai Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Studena Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Apia International - Sydney Open Sud de France - Montpellier VTR Open - Vina del Mar Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco Power Horse Cup - Dusseldorf Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Kremlin Cup - Moscow Valencia Open - Valencia Apia International - Sydney Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Power Horse Cup - Dusseldorf Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Vegeta Croatia Open - Umag Winston-Salem Open - Winston-Salem Moselle Open - Metz Malaysian Open - Kuala Lumpur China Open - Beijing If Stockholm Open - Stockholm Valencia Open - Valencia Heineken Open - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Gonet Geneva Open - Geneva Dubai Duty Free Tennis Championships - Dubai Geneva Open - Geneva Topshelf Open - 's-Hertogenbosch AEGON Championships - London Aegon Nottingham Open - Nottingham Open Sud de France - Montpellier Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Kremlin Cup - Moscow Valencia Open - Valencia St. Petersburg Open - St. Petersburg Millennium Estoril Open - Estoril Open Sud de France - Montpellier Open 13 - Marseille Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Open de Nice Cote d'Azur - Nice Gerry Weber Open - Halle SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Erste Bank Open - Vienna ASB Classic - Auckland Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Antalya Cup - Antalya Konzum Croatia Open - Umag Suisse Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Rakuten Japan Open - Tokyo European Open - Antwerp Swiss Indoors Basel - Basel ASB Classic - Auckland Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open Parc - Lyon Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Winston-Salem Open - Winston-Salem Chengdu Open - Chengdu China Open - Beijing Swiss Indoors Basel - Basel ASB Classic - Auckland Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Libema Open - 's-Hertogenbosch Noventi Open - Halle Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad European Open - Antwerp Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam European Open - Antwerp Hamburg European Open - Hamburg Argentina Open - Buenos Aires St. Petersburg Open - St. Petersburg Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Serbia Open - Belgrade Millennium Estoril Open - Estoril Open Parc - Lyon Mercedes Cup - Stuttgart Noventi Open - Halle Mallorca Championships - Mallorca Hall of Fame Open - Newport Gerry Weber Open - Halle Tata Open Maharashtra - Pune Dubai Duty Free Tennis Championships - Dubai Serbia Open - Belgrade Millennium Estoril Open - Estoril Mallorca Championships - Mallorca Nordea Open - Bastad Swiss Open - Gstaad St. Petersburg Open - St. Petersburg Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz Stockholm Open - Stockholm Erste Bank Open - Vienna ASB Classic - Auckland Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Millennium Estoril Open - Estoril Noventi Open - Halle Internazionali BNL d'Italia - Rome Intrum Stockholm Open - Stockholm Generali Open - Kitzbuhel Melbourne Summer Set - Melbourne Qatar ExxonMobil Open - Doha Grand Prix Hassan II - Marrakech Mercedes Cup - Stuttgart Gijon Open - Gijon Cordoba Open - Cordoba Gerry Weber Open - Halle Heineken Open - Auckland Swiss Indoors Basel - Basel Aircel Chennai Open - Chennai Brasil Open - Sao Paulo Qatar ExxonMobil Open - Doha Tel Aviv Watergen Open - Tel Aviv Brasil Open - Sao Paulo Gerry Weber Open - Halle Barcelona Open BancSabadell - Barcelona ASB Classic - Auckland ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai Millennium Estoril Open - Estoril Aegon Nottingham Open - Nottingham Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen Swiss Open - Gstaad St. Petersburg Open - St. Petersburg ASB Classic - Auckland Dubai Duty Free Tennis Championships - Dubai Sardegna Open - Cagliari Chile Dove Men+Care Open - Santiago BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome Western & Southern Open - New York BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome National Bank Open - Montreal Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome French Open - Paris Australian Open - Melbourne Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Davis Cup, Group 2, 2R, POR-CYP 5-0 Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, World Group, PO, POR-GER 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, PO, UKR-POR 3-1 Davis Cup, Group I, PO, POR-RSA 4-0 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, Group I, 1R, BLR-POR 3-2 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, Group I, 1R, POR-BRA 3-1 All Lower level tournaments Olympics - Rio de Janeiro Davis Cup, Group I, PO, SVK-POR 3-1 Olympics - Tokyo Davis Cup, World Group I, PO, LTU-POR 0-4 Davis Cup, Group I, 1R, AUT-POR 1-3 Davis Cup, World Group, Q, FIN-POR 3-1 Davis Cup, World Group, PO, POR-CZE 1-3 M25 Sunderland